package com.cold.demo.rabbitmq.demo.direct;

import org.springframework.boot.SpringBootConfiguration;

import java.util.*;

/**
 * 路由模式
 * 在Fanout模式中，一条消息，会被所有订阅的队列都消费。
 * 但是，在某些场景下，我们希望不同的消息被不同的队列消费。
 * 这时就要用到Direct类型的Exchange。给特定的消费者消费
 * 在Direct模型下：
 * 1.队列与交换机的绑定，不能是任意绑定了，而是要指定一个RoutingKey（路由key）
 * 2.消息的发送方在 向 Exchange发送消息时，也必须指定消息的 RoutingKey。
 * 3.Exchange不再把消息交给每一个绑定的队列，而是根据消息的Routing Key进行判断，只有队列的 Routingkey与消息的 Routing key完全一致，才会接收到消息
 */
@SpringBootConfiguration
public class DirectConfig {
    /**
     * 简单模式的队列名称
     */
    public static final String EXCHANGE_NAME = "spring.direct.exchange";

    public static void main(String[] args) {
        HashMap<Object, Object> map = new HashMap<>(64);
        map.put(null, null);
        HashSet<Object> set = new HashSet<>();
    }

}
